package com.example.demo.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 用户表
 * </p>
 *
 * @author lyk
 * @since 2024-03-30
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("tbl_user")
public class TblUser implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    @TableId(value = "PKID", type = IdType.AUTO)
    private String pkid;

    /**
     * 租户id
     */
    private String tenantId;

    /**
     * 外部系统key
     */
    private String externalKey;

    /**
     * 用户账户
     */
    private String userCode;

    /**
     * 用户密码
     */
    private String userPwd;

    /**
     * 用户名称
     */
    private String userName;

    /**
     * 用户昵称
     */
    private String nickname;

    /**
     * 用户名称拼音
     */
    private String userNamePinyin;

    /**
     * 用户名缩写
     */
    private String userInitials;

    /**
     * 用户类型：超级管理员=1,系统管理员=2,普通人员=4,工作人员=8,文秘人员=16
     */
    private Integer userType;

    /**
     * 用户性别：未知=0,男=1,女=2
     */
    private Integer userSex;

    /**
     * 职务
     */
    private String userRank;

    /**
     * 用户状态：正常=1,禁用=2,已删除=3,临时 = 8
     */
    private Integer userStatus;

    /**
     * 用户来源(1.手动添加 2.钉钉人员同步)
     */
    private Integer sourceType;

    /**
     * 隶属公司
     */
    private String company;

    /**
     * 用户邮箱
     */
    private String email;

    /**
     * 手机号码
     */
    private String phone;

    /**
     * 头像地址
     */
    private String avatarPath;

    /**
     * 小头像地址
     */
    private String smallAvatarPath;

    /**
     * 排序
     */
    private Integer sort;

    /**
     * 联系信息
     */
    private String contactInfo;

    /**
     * 人员密级
     */
    private Integer encryptLevel;

    /**
     * 办公地点
     */
    private String officeLocation;

    /**
     * 卡号
     */
    private String userCardNumber;

    /**
     * 借还人员卡片id
     */
    private String borrowReturnCardId;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 创建人id
     */
    private String creator;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;

    /**
     * 更新人id
     */
    private String updater;

    /**
     * 是否删除
     */
    private Boolean deleted;

    /**
     * 扩展
     */
    private String ext1;

    /**
     * 扩展
     */
    private String ext2;

    /**
     * 扩展
     */
    private String ext3;


}
